package cn.lls.dao;

import cn.lls.entity.sys.PermissionEntity;
import cn.lls.vo.permission.PermissionVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * <p>
 *  Mapper 接口
 * </p>
 *
 * @author 划水艺术家
 * @since 2022-11-15
 */
@Mapper
public interface PermissionDao extends BaseMapper<PermissionEntity> {
    /*
    * 根据 parentId 获取权限
    * */
    List<PermissionVO> getPermissionVOByParentId(Integer parentId);

    /*
     * 根据 permissionId 获取权限
     * */
    PermissionVO getPermissionVOById(Integer permissionId);

    /*
     * 获取所有父权限
     * */
    List<PermissionVO> getAllParent();

    /*
     * 获取超级管理员的所有父权限
     * */
    List<PermissionVO> getSuperAdminAllParent();


    /*
     * 获取单位管理员的所有权限
     * */
    List<PermissionVO> getCompanyAdminAllParent();

    /*
    * 更改 逻辑删除字段
    * */
    int changeLogic(Integer permissionId, int del);

    /*
    获取某个角色的所有权限
     */
    List<PermissionVO> getPermissionsByRoleId(Long roleId);






}
